Las funciones personalizadas de cambio se pueden usar en los activadores personalizados de cambio. Puede ejecutar funciones personalizadas de cambio como acciones personalizadas y funciones globales. Mientras que las acciones personalizadas se pueden invocar directamente en los activadores personalizados de cambio, las acciones globales se pueden llamar en las acciones personalizadas de cambio.
Para crear funciones personalizadas de cambio, vaya a Admin > Gestión de problemas/cambios > Función personalizada de cambio.
Las acciones personalizadas son funciones personalizadas ejecutables que permiten a los usuarios manipular datos en ServiceDesk Plus y en otras aplicaciones externas. Las funciones personalizadas se basan en Deluge, el lenguaje de scripting propietario de Zoho.
Las acciones personalizadas se pueden usar en los activadores personalizados de cambio para realizar acciones en cambios, otros módulos y aplicaciones externas.
Use las siguientes indicaciones para crear, habilitar, deshabilitar y eliminar acciones personalizadas.
Use el botón Nuevo para crear una acción personalizada.
El botón Acciones le permite eliminar, deshabilitar y habilitar acciones personalizadas de forma masiva. Para modificar acciones personalizadas individuales, use los íconos que se muestran junto a la acción personalizada. Tenga en cuenta que solo las acciones personalizadas activas estarán disponibles para su uso en las configuraciones mencionadas anteriormente.
Use palabras clave para buscar acciones personalizadas en el campo proporcionado. Use los filtros de la parte superior para mostrar las acciones personalizadas utilizadas en funciones específicas.
Haga clic en Nuevo en la página de vista de lista de acciones personalizadas.
En la página que se muestra, proporcione un nombre y una descripción para su acción personalizada.
Use la interfaz simple de arrastrar y soltar llamada Editor de scripts Deluge para crear su acción personalizada.
Como se muestra en la siguiente captura de pantalla, se pasarán 'changeObj' y 'context' como argumentos para la función personalizada:

Debes escribir la función personalizada con changeObj como argumento.
Después de ejecutar la función personalizada, se devolverá el tipo de datos Map en el siguiente formato:
Puedes actualizar los campos del cambio, agregar notas y actualizar roles del cambio devolviendo el map desde la función personalizada. El formato utilizado en estas funciones personalizadas es el mismo que el del script y la clase de Python. Para más detalles, visita esta página.
Los nuevos valores de campo deben devolverse desde la función personalizada en un formato específico, como se muestra a continuación:
Consideremos una función de ejemplo para actualizar el asunto del cambio a 'Firewall Upgrade' y la prioridad a 'High'.
returnJson = Collection();
changeID = changeObj.get("id");
instanceJson = context.get("instance");
helpdeskID = instanceJson.get("id");
inputData = {"change": {"title":"Firewall Upgrade","priority":{"name":"High"}}};
resp = invokeurl
[
url: "http://servername:portnumber/api/v3/changes/" + changeID
type: PUT
parameters: {"input_data": inputData,"TECHNICIAN_KEY":"xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","PORTALID":helpdeskID}
];
response_status = resp.get("response_status");
if("success".equals(response_status.get("status"))) {
returnJson.insert("result":"success");
}
else {
returnJson.insert("result":"failure");
}
return returnJson;
Dentro de las funciones personalizadas de cambios, puedes llamar a funciones globales que pueden almacenar información esencial para conectarse con aplicaciones externas, funcionalidades comunes y configuraciones.
Después de escribir la función personalizada, puedes probarla siguiendo los pasos que se indican a continuación:
Cuando pruebas una función personalizada, puedes depurar el código e imprimir la salida usando una sentencia llamada info. Por ejemplo, para comprender la estructura de changeObj y context, simplemente puedes ejecutar el siguiente script y revisar la respuesta.
infochangeObj;
info context;
return true;