Los valores tipo SysChoice se agregan en la clase “sys_choice”, la entidad pide los siguientes atributos para realizar un registro:
Mapeando la clase en el archivo de configuración:
{
"searchBy": [
"name",
"value"
],
"name": "sys_choice",
"fields": [
{
"type": "string",
"name": "element",
"mappingType": "Data",
"mappingName": null,
"isRequired": true,
"classReference": null
},
{
"type": "string",
"name": "name",
"mappingType": "Data",
"mappingName": null,
"isRequired": true,
"classReference": null
},
{
"type": "string",
"name": "value",
"mappingType": "Mapper",
"mappingName": null,
"isRequired": false,
"classReference": null
},
{
"type": "string",
"name": "label",
"mappingType": "Mapper",
"mappingName": null,
"isRequired": false,
"classReference": null
}
]
}
Para adicionar estos valores en nuestra configuración, el valor de “value” y “label” son los únicos que se toman del dispositivo; los otros atributos se registran en “dataReference”,
{
"dataReference": [
{
"name": "OperatingSystemReferenced",
"fields": [
{
"value": "os",
"fieldCMDB": "lement",
"classDevice": [
"Laptop",
"Desktop"
]
},
{
"value": "cmdb_ci_computer",
"fieldCMDB": "name",
"classDevice": [
"Laptop",
"Desktop"
]
}
]
}
],
"mapper": [
{
"name": "OperatingSystemReferenced",
"fields": [
{
"fieldDevice": "operatingSystem",
"fieldCMDB": "os"
},
{
"fieldDevice": "operatingSystem",
"fieldCMDB": "label"
}
]
}
],
"classCMDB": [
{
"searchBy": [
"object_id"
],
"name": "cmdb_ci_computer",
"fields": [
{
"type": "string",
"name": "os",
"mappingType": "SysChoice",
"mappingName": "OperatingSystemReferenced",
"isRequired": false,
"classReference": "sys_choice"
}]
}
]
}
Donde:
“fieldCMDB”: “name”: el atributo “name”, referencia la clase con la que se relacionará “sys_choice”
“fieldCMDB”: “element”: el atributo “element” tomará el valor del campo al que refiere, debido a que el campo que lo refiere es “os” de la clase “cmdb_ci_computer”, asigne su valor como “os”