Subfluxo - com escopo (descontinuado)

  • Versão de lançamento: Yokohama
  • Atualizado 30 de jan. de 2025
  • 2 min. de leitura
  • A API de subfluxo fornece métodos para executar subfluxos Workflow Studio publicados.

    Esta API está obsoleta e foi substituída por FlowAPI - com escopo, global.

    A API de subfluxo só pode ser usada em scripts de servidor.

    Use o namespace sn_fd para acessar a API de subfluxo.

    Antes de interagir com um subfluxo usando a API Subflow, você deve primeiro criar e publicar o subfluxo na interface Workflow Studio. Como a API de subfluxo só interage com subfluxos pré-criados, não há construtor para a classe.

    Nota:
    Para otimizar o desempenho da instância, evite chamar esses métodos de um script de regra de negócio assíncrono. Em vez disso, crie um registro de trabalho agendado na IU Workflow Studio.

    Subfluxo - startAsync(cadeia de caracteres scopeName.subflowName, entradas de mapa)

    Executa um subfluxo publicado de forma assíncrona.

    As chamadas assíncronas não são bloqueadas, permitindo que o cliente execute outro código no script sem ter que esperar a conclusão do subfluxo.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    scopeName.subflowName Cadeia de caracteres O escopo da aplicação para o subfluxo e o nome interno do subfluxo a ser executado. Se scopeName não estiver incluído, o escopo do usuário conectado no momento será usado. Recupere o nome interno do subfluxo usando a coluna Nome interno na página principal Workflow Studio.
    entradas Mapa Pares de nome-valor que definem entradas de subfluxo. Se um subfluxo incluir entradas obrigatórias, elas deverão ser incluídas. Para entradas dos tipos de campo Referência ou ID do documento, use um objeto GlideRecord como o valor.
    Tabela 2. Retornos
    Tipo Descrição
    Objeto Objeto PlanResponse que contém as seguintes propriedades:
    • contextId: Sys_id do registro de detalhes de execução do subfluxo executado. Acesse os detalhes da execução navegando até a guia Execuções de fluxo em Workflow Studio e filtrando por sys_id.
    Uma exceção ocorre quando o subfluxo:
    • Não existe no escopo da aplicação especificado ou o nome do subfluxo ou do escopo foi digitado incorretamente.
    • Não foi publicado.
    • Foi aprovado um objeto de entrada que não corresponde às entradas de subfluxo.
    • Excede o limite de recursão definido pela propriedade do sistema com.glide.hub.flow_engine.indirect_recursion_limit. O valor padrão é três.
    //Run a subflow that takes two inputs: user, a sys_user record, and laptop_welcome_message, a string.
    (function startSubflowAsync() {
    
      try {
        var userToProvisionFor = new GlideRecord('sys_user');
        userToProvisionFor.get('62826bf03710200044e0bfc8bcbe5df1');
    
        var inputs = {};
        inputs['user'] = userToProvisionFor;
        inputs['laptop_welcome_message'] = 'Welcome Onboard!!';
    
        var result = sn_fd.Subflow.startAsync('sn_devstudio.provisionlaptop', inputs);
    
        //The Sys ID of a flow execution (contextId)
        var contextId = result.contextId;
    
      } catch (ex) {
        var message = ex.getMessage();
        gs.error(message);
      }
    
    })();