CIRelatedList – Global
Die CIRelatedList- API ist eine Dienstprogrammklasse für die Arbeit mit CI-zugehörigen Listen.
Jede Instanz dieser Klasse enthält die Details einer einzelnen Liste, die sich auf ein bestimmtes CI bezieht. Die Details dieser Liste und der Inhalt der Liste sind enthalten.
Kann mit jedem serverseitigen Discovery-Skript verwendet werden.
CIRelatedList – addRec(Object record)
Fügt den angegebenen Datensatz der zugehörigen Liste hinzu.
| Name | Typ | Beschreibung |
|---|---|---|
| record | Objekt | Jedes Mitglied im Objekt ist ein Spaltenname in der zugehörigen Tabelle. Wenn Sie beispielsweise auf die Tabelle „cmdb_serial_number“ verweisen, kann dieser Wert Folgendes enthalten:
|
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel zeigt, wie Sie einen Datensatz zu einer zugehörigen CI-Liste hinzufügen.
var ciDataObj = new CIData(); // Instantiate a new CIData class object
// sys_id of the CI to which the related list is attached.
var rl = new CIRelatedList('cmdb_serial_number', 'cmdb_ci','0c43b0f5c6112275019abd2bb3dcd78f','true');
// Create an object and add the serial numbers
var sr = {"serial_number_type":"bios","serial_number":"1BC5E4z89246","valid":"true"};
rl.addRec(sr); // Add the related list. Sets the given records to the related list.
ciDataObj.addRelatedList(rl); // Adding the related list to the cidata
gs.info(JSON.stringify(rl, null, 4)); // Display the added related list
Ausgabe:
{
"GlideRecordUtil": {},
"ignoreFields": {
"sys_created_by": true,
"sys_updated_by": true,
"sys_mod_count": true
},
"records": [
{
"serial_number_type": "bios",
"serial_number": "1BC5E4z89246",
"valid": "true"
}
],
"m2m_records": [],
"table_name": "cmdb_serial_number",
"field_name": "cmdb_ci",
"cmdb_ci": "0c43b0f5c6112275019abd2bb3dcd78f",
"debug_flag": "true",
"isM2M": false,
"target_table_name": null,
"target_ref_field_name": null
}
CIRelatedList – addRecs(Array records)
Setzt die angegebenen Datensätze auf die zugehörige Liste
| Name | Typ | Beschreibung |
|---|---|---|
| Datensätze | Array von Objekten | Jedes Objekt stellt einen Datensatz in der zugehörigen Tabelle dar. Jedes Mitglied im Objekt ist ein Spaltenname in dieser Tabelle. Wenn Sie beispielsweise auf die Tabelle „cmdb_serial_number“ verweisen, kann dieser Wert Folgendes enthalten:
|
| Typ | Beschreibung |
|---|---|
| void |
Dieses Beispiel zeigt, wie Sie einer zugehörigen CI-Liste mehrere Datensätze hinzufügen.
var ciDataObj = new CIData(); // Instantiate a new CIData class object
// sys_id of the CI to which the related list is attached.
var rl = new CIRelatedList('cmdb_serial_number', 'cmdb_ci','0c43b0f5c6112275019abd2bb3dcd78f','true');
// Create an object and add the serial numbers
var sr = [{"serial_number_type":"bios","serial_number":"1BC5E4z89246","valid":"true"},{"serial_number_type":"baseboard","serial_number":"w4z89246","valid":"true"}];
rl.addRecs(sr); // Add the related list. Sets the given records to the related list.
ciDataObj.addRelatedList(rl); // Adding the related list to the cidata
gs.info(JSON.stringify(rl, null, 4)); // Display the added related list
Ausgabe:
{
"GlideRecordUtil": {},
"ignoreFields": {
"sys_created_by": true,
"sys_updated_by": true,
"sys_mod_count": true
},
"records": [
{
"serial_number_type": "bios",
"serial_number": "1BC5E4z89246",
"valid": "true"
},
{
"serial_number_type": "baseboard",
"serial_number": "w4z89246",
"valid": "true"
}
],
"m2m_records": [],
"table_name": "cmdb_serial_number",
"field_name": "cmdb_ci",
"cmdb_ci": "0c43b0f5c6112275019abd2bb3dcd78f",
"debug_flag": "true",
"isM2M": false,
"target_table_name": null,
"target_ref_field_name": null
}
CIRelatedList – appendXMLChildFld(String parent, String name, String datum)
Hängt ein untergeordnetes XML-Element an ein Feld an.
| Name | Typ | Beschreibung |
|---|---|---|
| parent | Zeichenfolge | Das übergeordnete Element |
| Name | Zeichenfolge | Der Elementname |
| datum | Zeichenfolge | Die anzuhängenden Daten |
| Typ | Beschreibung |
|---|---|
| void |
CIRelatedList – appendXMLChildRecord(String parent, String name, String record)
Hängt ein untergeordnetes XML-Element an einen Datensatz an.
| Name | Typ | Beschreibung |
|---|---|---|
| parent | Zeichenfolge | Das übergeordnete Element |
| Name | Zeichenfolge | Der Elementname |
| record | Zeichenfolge | Der Datensatz |
| Typ | Beschreibung |
|---|---|
| void |
CIRelatedList – checkSysCollection()
Überprüft, ob dies eine SysCollection-Tabelle ist. Wenn ja, wird der Name der Zieltabelle und der Name des Referenzfeldes festgelegt.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| CIRelatedList | Eine Instanz von CIRelatedList für die angegebene Liste. |
CIRelatedList – checkSysM2M()
Überprüft, ob es sich um eine Sys-Many-to-many-Tabelle handelt. Wenn ja, wird der Name der Zieltabelle und der Name des Referenzfeldes festgelegt.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| Boolean | „True“, wenn es sich um eine Sys-Many-to-many-Tabelle handelt; ansonsten „false“. |
CIRelatedList – CIRelatedList(String table, String refField, String cmdb_ci, String debugFlag)
Erstellt eine Instanz der CIRelatedList-Klasse. Konstruiert ohne Argumente einfach eine leere Instanz.
| Name | Typ | Beschreibung |
|---|---|---|
| table | Zeichenfolge | Die Tabelle, die die zugehörige Liste enthält. Wenn Many-to-Many, die Many-to-Many-Tabelle. |
| refField | Zeichenfolge | Das Referenzfeld in der Tabelle für diese zugehörige Liste |
| cmdb_ci | Zeichenfolge | Die sys_id des CI, auf das sich diese Liste bezieht. |
| debugFlag | Zeichenfolge | Wenn „true“, ist die Debug-Protokollierung aktiviert. |
CIRelatedList – fromXML(String element)
Initialisiert diese Instanz aus dem angegebenen XML-Element.
| Name | Typ | Beschreibung |
|---|---|---|
| element | Zeichenfolge | XML-Elemente |
| Typ | Beschreibung |
|---|---|
| void |
CIRelatedList – populate()
Füllt das Feld this.records dieser Instanz aus.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| void |
CIRelatedList – toString(Array result)
Erzeugt eine Zeichenfolgendarstellung dieser Instanz und schiebt jede Zeile an das Ende des angegebenen Ergebnis-Arrays.
Diese Methode wird von CIData.toString() aufgerufen und nimmt an, dass in Bezug stehende Listenzeilen um zwei Leerzeichen eingerückt werden sollen.
| Name | Typ | Beschreibung |
|---|---|---|
| result | Array | Das Ergebnis, das konvertiert werden soll |
| Typ | Beschreibung |
|---|---|
| void |
CIRelatedList – toXML(String document, String element)
Serialisiert diese Instanz im angegebenen Dokument und im <rl>-Element nach XML.
| Name | Typ | Beschreibung |
|---|---|---|
| document | Zeichenfolge | Das Dokument |
| element | Zeichenfolge | Das rl-Element |
| Typ | Beschreibung |
|---|---|
| void |
CIRelatedList – remove()
Entfernt alle zugehörigen Listenelemente.
| Name | Typ | Beschreibung |
|---|---|---|
| Keine |
| Typ | Beschreibung |
|---|---|
| void |
In diesem Codebeispiel werden die zugehörigen Datensätze gelöscht, die den CI-Elementen mit dem Namen = *JEMPLOYEE-IBM zugeordnet sind. Dieses Beispiel bezieht sich auf eine Nicht-M2M-Tabelle.
//Get a configuration item record which has a related list. Example: CI items with the name = *JEMPLOYEE-IBM.
var ciRecord = new GlideRecord("cmdb_ci_computer");
ciRecord.addQuery("name", "*JEMPLOYEE-IBM");
ciRecord.query();
if (ciRecord.next()) {
var relRecordTable = 'cmdb_ci_network_adapter'; // The table containing the related list (if many-to-many, the many-to-many table)
var relRecordField = 'cmdb_ci'; // The reference field in the table for this related list
var cmdb_ciHasRelRecord = ciRecord.sys_id; // The sys_id of the CI this list is related to.
var debugFlag = 'true'; // True if debug logging is enabled.
// Get the related record List
var CIRelatedList = new CIRelatedList(relRecordTable, relRecordField, cmdb_ciHasRelRecord, debugFlag);
CIRelatedList.remove(); // Delete all related records
}
CIRelatedList – xmlToRecord(String records, String element)
Konvertiert eine zugehörige Liste aus XML in ein Datensatzformat.
| Name | Typ | Beschreibung |
|---|---|---|
| records | Zeichenfolge | Der Datensatz, der erstellt werden soll |
| element | Zeichenfolge | Das XML-Element |
| Typ | Beschreibung |
|---|---|
| void |