CSBScratchpadUtil - com escopo

  • Versão de lançamento: Washingtondc
  • Atualizado 1 de fev. de 2024
  • 5 min. de leitura
  • A API CSBScratchpadUtil permite que os consumidores compartilhem informações "extras" que estão fora de qualquer outro serviço do Service Bridge, com seus provedores.

    Essas informações são armazenadas como pares de nome-valor na tabela Scratchpad [sn_sb_scratchpad]. As informações compartilhadas devem ser associadas a tarefas que são de um dos dois tipos: tarefas do provedor ou tarefas remotas.

    Se a tarefa associada estiver ativa, as informações atualizadas do bloco de anotações serão sincronizadas com a instância do consumidor. Se uma tarefa for desativada ou excluída, as informações no bloco de anotações também serão excluídas após um número especificado de dias; por padrão, três. Este padrão é definido na propriedade sn_sb.scratchpad.autodelete.days.

    Provedores e consumidores podem adicionar, atualizar e remover informações de e para a tabela do Bloco de anotações. Os produtores atualizam essas informações usando a API PSBScratchpadUtil.

    Para acessar esta API, a aplicação Service Bridge para consumidores deve ser instalada. Esta API é executada no namespace sn_sb_con.

    CSBScratchpadUtil - get(GlideRecord taskGR, String name)

    Retorna o valor de uma propriedade de bloco de anotações especificada.

    Tabela 1. Parâmetros
    Nome Tipo Descrição
    taskGR GlideRecord GlideRecord da tarefa remota ativa ou da tarefa do provedor associada à propriedade do bloco de anotações especificada. Esses registros estão localizados nas tabelas Tarefa remota [sn_sb_con_remote_task] e Tarefa do provedor [sn_sb_con_provider_task].
    nome Cadeia de caracteres Nome da propriedade do bloco de anotações cujo valor será recuperado. Localizado na tabela Scratchpad [sn_sb_scratchpad].
    Tabela 2. Retorna
    Tipo Descrição
    Cadeia de caracteres ou nulo Valor da propriedade de bloco de anotações solicitada. Nulo se a propriedade não for encontrada.

    O exemplo de código a seguir mostra como chamar este método.

    var rtGR = new GlideRecord("sn_sb_con_remote_task");
    rtGR.setLimit(1); 
    rtGR.query();  
    rtGR.next() 
    if (rtGR.isValidRecord()) { 
      var util = new sn_sb_con.CSBScratchpadUtil();
      util.update(rtGR, "name1", "value1"); 
      gs.info(util.get(rtGR, "name1"));
    }

    Saída:

    "value1"

    CSBScratchpadUtil - getAll(GlideRecord taskGR)

    Retorna os nomes e valores de propriedade (pares de nome-valor) de todas as propriedades do bloco de anotações associadas à tarefa especificada.

    Tabela 3. Parâmetros
    Nome Tipo Descrição
    taskGR GlideRecord GlideRecord da tarefa remota ativa ou da tarefa do provedor cujas propriedades de bloco de anotações associadas serão retornadas. Esses registros estão localizados nas tabelas Tarefa remota [sn_sb_con_remote_task] e Tarefa do provedor [sn_sb_con_provider_task].
    Tabela 4. Retorna
    Tipo Descrição
    Objeto Todos os nomes e valores de propriedade contidos na tarefa especificada. No formulário:

    { name1: value1, name2: value2, … }

    O exemplo de código a seguir mostra como chamar este método.

    var rtGR = new GlideRecord("sn_sb_con_remote_task");
    rtGR.setLimit(1);
    rtGR.query();  
    rtGR.next() 
    if (rtGR.isValidRecord()) {  
      var util = new sn_sb_con.CSBScratchpadUtil();
      util.update(rtGR, "name1", "value1"); 
      gs.info(JSON.stringify(util.getAll(rtGR))); 
    }

    Saída:

    { "name1": "value1" }

    CSBScratchpadUtil - getNames(GlideRecord taskGR)

    Retorna a lista de nomes de todas as propriedades do bloco de anotações associadas ao registro de tarefa especificado.

    Tabela 5. Parâmetros
    Nome Tipo Descrição
    taskGR GlideRecord GlideRecord da tarefa remota ativa ou da tarefa do provedor para a qual a lista de nomes de todas as propriedades do bloco de anotações associadas será retornada. Esses registros estão localizados nas tabelas Tarefa remota [sn_sb_con_remote_task] e Tarefa do provedor [sn_sb_con_provider_task].
    Tabela 6. Retorna
    Tipo Descrição
    Matriz de cadeias de caracteres Lista de nomes das propriedades do bloco de anotações associadas ao registro de tarefa especificado.

    O exemplo de código a seguir mostra como chamar este método.

    var rtGR = new GlideRecord("sn_sb_con_remote_task");
    rtGR.setLimit(1); 
    rtGR.query();  
    rtGR.next() 
    if (rtGR.isValidRecord()) {
      var util = new sn_sb_con.CSBScratchpadUtil();
      util.update(rtGR, "name1", "value1"); 
      gs.info(JSON.stringify(util.getNames(rtGR))); 
    }

    Saída:

    [ "name1" ]

    CSBScratchpadUtil - populateClientScratchpadBR(GlideRecord taskGR)

    Coloca as propriedades do bloco de anotações associadas à tarefa remota especificada ou à tarefa do provedor no cliente g_scratchpad.

    Você pode chamar este método de uma regra de negócio de exibição de IU.

    Tabela 7. Parâmetros
    Nome Tipo Descrição
    taskGR GlideRecord GlideRecord da tarefa remota ativa ou da tarefa do provedor cujas entradas de bloco de anotações associadas devem ser colocadas no cliente g_scratchpad. Esses registros estão localizados nas tabelas Tarefa remota [sn_sb_con_remote_task] e Tarefa do provedor [sn_sb_con_provider_task].
    Tabela 8. Retorna
    Tipo Descrição
    Nenhum

    O exemplo de código a seguir mostra como chamar este método.

    new sn_sb_con.CSBScratchpadUtil().populateClientScratchpadBR(current);

    CSBScratchpadUtil - remove(GlideRecord taskGR, String name)

    Exclui a propriedade de bloco de anotações especificada da tabela Bloco de anotações [sn_sb_scratchpad].

    Nota:
    As exclusões não são sincronizadas com outras instâncias ServiceNow. As propriedades do bloco de anotações são excluídas automaticamente em um número especificado de dias depois que o registro de tarefa associado é desativado ou excluído.
    Tabela 9. Parâmetros
    Nome Tipo Descrição
    taskGR GlideRecord GlideRecord da tarefa remota ativa ou da tarefa do provedor associada à propriedade do bloco de anotações especificada. Esses registros estão localizados nas tabelas Tarefa remota [sn_sb_con_remote_task] e Tarefa do provedor [sn_sb_con_provider_task].
    nome Cadeia de caracteres Nome da propriedade do bloco de anotações a ser removida da tabela do bloco de anotações [sn_sb_scratchpad].
    Tabela 10. Retorna
    Tipo Descrição
    Nenhum

    O exemplo de código a seguir mostra como chamar este método.

    var rtGR = new GlideRecord("sn_sb_con_remote_task");
    rtGR.setLimit(1); 
    rtGR.query();  
    rtGR.next() 
    if (rtGR.isValidRecord()) {
      var util = new sn_sb_con.CSBScratchpadUtil();
      util.update(rtGR, "name1", "value1"); 
      util.remove(rtGR, “name1”);
      gs.info(util.get(rtGR, "name1")); 
    }

    Saída:

    undefined

    CSBScratchpadUtil - update(GlideRecord taskGR, Nome da cadeia de caracteres, Valor da cadeia de caracteres, Booliano client_side_accessible)

    Insere uma propriedade ou atualiza o valor de uma propriedade na tabela Scratchpad [sn_sb_scratchpad].

    Nota:
    O número máximo de propriedades que você pode atualizar em uma chamada é 50.
    Tabela 11. Parâmetros
    Nome Tipo Descrição
    taskGR GlideRecord GlideRecord da tarefa remota ativa ou da tarefa do provedor associada à propriedade do bloco de anotações especificada. Esses registros estão localizados nas tabelas Tarefa remota [sn_sb_con_remote_task] e Tarefa do provedor [sn_sb_con_provider_task].
    nome Cadeia de caracteres Nome de uma propriedade de bloco de anotações nova ou existente. Este nome deve ser exclusivo em todas as propriedades do bloco de anotações.
    valor Cadeia de caracteres Valor da propriedade do bloco de anotações.

    Máximo: 4000 caracteres.

    client_side_accessible Booliano Opcional. Sinalizador que indica se esta propriedade está disponível para g_scratchpad do lado do cliente quando populateClientScratchpadBR é chamado de uma regra de negócios de exibição.
    Valores válidos:
    • verdadeiro: a propriedade está disponível.
    • false: a propriedade não está disponível.

    Padrão: falso

    Tabela 12. Retorna
    Tipo Descrição
    Nenhum

    O exemplo de código a seguir mostra como chamar este método.

    var rtGR = new GlideRecord("sn_sb_con_remote_task");
    rtGR.setLimit(1); 
    rtGR.query();
    rtGR.next()
    if (rtGR.isValidRecord()) {
      var util = new sn_sb_con.CSBScratchpadUtil();
      util.update(rtGR, "name1", "value2");
      gs.info(util.get(rtGR, "name1")); 
    } 

    Saída:

    "value2"