A ordem de execução é guiada automaticamente
Os guias de pedido do catálogo de serviços permitem que os clientes façam uma única solicitação do catálogo de serviços que pode gerar vários itens solicitados. Os administradores podem configurar guias de pedido para serem executados automaticamente, a partir de um fluxo de trabalho ou de um script para gerar um conjunto de itens solicitados sem enviar manualmente uma solicitação do catálogo de serviços. Os administradores também podem revisar e reprocessar as falhas do guia de pedido.
Como caso de uso, um fluxo de trabalho de integração de um novo funcionário pode executar um guia de pedido para solicitar itens automaticamente para esse funcionário.
Guias de ordem de execução de scripts
A execução de guias de ordem com um script do lado do servidor é mais complexa do que o uso de fluxos de trabalho, mas permite mais flexibilidade e pode ser usada em situações sem fluxo de trabalho.
Use a classe Java SNC.ScriptableOrderGuide para executar guias de pedido com um script.
Use o construtor SNC.ScriptableOrderGuide(String orderGuideId) para criar um novo objeto ScriptableOrderGuide.
Resumo do método
| Método | Retornar Valor | Descrição |
|---|---|---|
| process (cadeia de caracteres json) | booliano | Executa o guia de pedido usando o parâmetro de cadeia de caracteres codificado JSON como entrada para o guia de pedido. Retorna verdadeiro ou falso, dependendo se o processamento foi bem-sucedido ou não. Nota:
Os parâmetros opened_by e requested_for devem ser passados para o guia de pedido e ambos devem ter valores de sys_id de registro de usuário válidos. Se o processamento for bem-sucedido e uma solicitação for criada pelo guia de pedido, você poderá recuperar a solicitação GlideRecord usando getRequest(). Se o processamento falhar, você poderá recuperar o GlideRecord com falha usando getFailure()e enviar o script para reprocessamento usando reprocess. |
| reprocessar (falha de GlideRecord) | booliano | Executa o guia de pedido novamente usando o parâmetro de cadeia de caracteres codificado JSON armazenado no GlideRecord de falha. |
| getMessage () | Cadeia de caracteres | Recupera a mensagem preenchida após o processamento ou reprocessamento. |
| getRequest() | GlideRecord | Recupera a solicitação GlideRecord. |
| getFailure () | GlideRecord | Recupera o GlideRecord de falha da tabela Falhas do Guia de pedido programável [sc_script_order_guide_failure]. |
Exemplo de script
// Creating the object to later be JSON encoded
var json = {"opened_by":"62826bf03710200044e0bfc8bcbe5df1","requested_for":"06826bf03710200044e0bfc8bcbe5d8a","department":"221f3db5c6112284009f4becd3039cc9"};
var now_GR = new GlideRecord("sc_cat_item_guide");
if (gr.get("name","IT Onboarding SOG")) {
var sog = new SNC.ScriptableOrderGuide(gr.getValue("sys_id"));
var result = sog.process(new JSON().encode(json));
if(!result)
gs.log("Processing the scriptable order guide failed with message: " + sog.getMessage());
else {
var request = sog.getRequest();
gs.log("Request created - " + request.sys_id); } }Guias de ordem de execução de fluxos de trabalho
A execução de um guia de pedido a partir de um fluxo de trabalho é adequada se você incluir guias de pedido como parte de um processo baseado em fluxo de trabalho mais amplo.
| Campo | Descrição |
|---|---|
| Guia de pedido | O nome do guia de pedido que esta atividade processa. Por exemplo, Exemplo de integração de funcionários de TI. |
| Script | Um script passando informações para o guia de pedido. Essas informações são enviadas como um parâmetro de cadeia de caracteres codificado em JSON atribuído à variável de resposta. O script deve atender a estes requisitos:
|
Resultados
- Sucesso: a atividade processou com sucesso o guia de pedido. Isso não significa que uma solicitação foi criada. Se uma solicitação tiver sido criada, o sys_id da solicitação será adicionado ao bloco de anotações do fluxo de trabalho na variável sc_request.
- Falha: ocorreu uma falha ao processar o guia de pedido, criando um registro de falha. Se o processamento falhar, você poderá exibir e editar o registro de falha.
Exemplo de fluxo de trabalho
O fluxo de trabalho de exemplo de fluxo de trabalho de TI de integração de funcionário usa este exemplo para gerar itens do catálogo de TI para um novo funcionário como parte de um processo de integração.
- Use uma cadeia de caracteres JSON gerada anteriormente a partir do registro de mudança de RH.
- Anexe os parâmetros obrigatórios opened_by e requested_for a essa cadeia de caracteres.
- Envie a nova cadeia de caracteres para processamento pelo guia de pedido.
var parameters = new JSON().decode(current.payload);
// Need to amend the json object to include additional values.
parameters.opened_by = current.opened_by + "";
parameters.requested_for = current.opened_for + "";
answer = new JSON().encode(parameters);Exibir falhas do guia de pedido
O processamento do guia de pedido pode falhar, por exemplo, se o guia de pedido que está sendo executado não existir. Quando ocorre uma falha durante o processamento do guia de pedido, o submódulo de falhas do guia de pedido programável permite revisar e reprocessar as falhas. Um registro é criado para cada falha e, depois de corrigir os erros que causaram a falha inicial, você pode reprocessar as guias de pedido com falha.
Por Que e Quando Desempenhar Esta Tarefa
Se ocorrer uma falha, um registro de falha será criado na tabela Falhas do Guia de pedido programável [sc_script_order_guide_failure].
Para exibir detalhes de uma falha, navegue até e abra um registro de falha.
Falhas de reprocessamento: se você corrigiu o erro que causou a falha inicial, poderá reprocessar as guias de pedido com falha.