Uso de variáveis em um script Python/HCL

Quando você cria um script Python/HCL no editor de scripts do Robôs, é possível criar dois tipos de variáveis diferentes:

  • Variáveis Pythonvariáveis Python regulares definidas no corpo do script

  • Variáveis HCLVariáveis HCL definidas na janela Variáveis

Os dois tipos de variáveis têm finalidades diferentes, explicadas nas seções a seguir.

Além disso, o HCL atribui valores automaticamente às variáveis integradas do sistema com base na organização do Diligent One em que um script é executado e no modo em que isso acontece (desenvolvimento ou produção). Para obter mais informações, consulte o método Método system_variable[].

Você pode usar os três tipos de variáveis juntos no mesmo script.

Variáveis Python

As variáveis Python em um script Python/HCL funcionam da mesma forma que em qualquer script Python. Se os valores em um script estiverem sujeitos a alteração, você pode fazer referência a variáveis na lógica do script em vez de valores literais. Você pode criar variáveis Python em qualquer lugar do script em que precise delas.

Exemplos de variáveis Python

O exemplo abaixo percorre uma lista de números e quadrados de cada número na lista. Como os números na lista mudam, a lógica do script usa variáveis em vez de valores literais:

  • lista_de_números – uma variável atribuída à lista de números

  • v_número – uma variável atribuída a um único número na lista

  • v_número_quadrado – uma variável atribuída ao resultado de v_número * v_número

Com cada iteração do loop para, os valores das variáveis v_número e v_número_quadrado atualizam.

lista_de_números = [1, 2, 3, 4, 5]
para v_número em lista_de_números:
    v_número_ao_quadrado = v_número * v_número
imprimir(v_número_ao_quadrado)

Saída do script:

1
4
9
16
25

Variáveis HCL

Variáveis HCL atendem a duas finalidades:

  • Elas são a base dos parâmetros de entrada de tarefa em tarefas do robô.

  • Oferecem armazenamento seguro para informações sigilosas, como senhas e tokens de autenticação.

No Robôs, nenhum desses requisitos pode ser atendido com variáveis Python. Você precisa usar variáveis HCL.

A janela Variáveis

No editor de scripts do Robôs, a janela Variáveis oferece um local centralizado para definir qualquer variável HCL exigida por um script. Mais especificamente, a janela Variáveis é onde você define qualquer variável de script para armazenar valores de entrada informados pelos usuários quando executam ou agendam uma tarefa de robô. Por exemplo:

  • uma variável v_department que permite aos usuários especificar um departamento quando executam ou agendam uma tarefa

  • uma variável que administra com segurança uma credencial de autenticação necessária para acessar uma fonte de dados, como senha ou token de autenticação

Você também pode usar a janela Variáveis para definir uma variável HCL usada apenas no contexto do script. Por exemplo, v_id_org. No entanto, a abordagem mais fácil nessa situação é criar uma variável Python padrão no corpo do script em vez de definir uma variável HCL.

Campos de definição de variável

NúmeroDescrição
1

Nomecontém o nome da variável, como v_departmento

2

Tipoespecifica o tipo de variável

3

Valoro valor inicial atribuído à variável na execução interativa do script no editor de script

Campos de entrada da tarefa do robô

NúmeroDescrição
4

Entrada da tarefaespecifica que a variável é usada com um parâmetro de entrada da tarefa no Designer de Tarefa

  • Entrada do usuário obrigatóriao usuário deve fornecer um valor de entrada ao executar ou agendar uma tarefa do robô

  • Entrada do usuário opcionalo usuário pode não fornecer um valor de entrada ao executar ou agendar uma tarefa do robô

5

Rótulo da entrada da tarefacria um rótulo para o parâmetro de entrada exibido para o usuário no Designer de Tarefa. Por exemplo, Insira um departamento

Descrição de entrada da tarefa (opcional)cria uma descrição para o parâmetro de entrada, adicionando detalhes que podem ser úteis para o usuário

Use a janela Variáveis para definir uma variável HCL

Defina uma variável HCL como v_department ou v_password para usar com um parâmetro de entrada de tarefa do robô no Designer de Tarefa.

Observação

As variáveis HCL são principalmente para uso com entradas de tarefas de robô, como opções de configuração de scripts ou senhas ou tokens. Para variáveis de script não usadas com entradas de tarefas, a abordagem mais fácil é definir uma variável padrão Python no corpo do script.

Criar uma definição básica de variável

  1. No editor de scripts do Robôs, clique em Gerenciar variáveis .

  2. Na janela Variáveis, clique em Adicionar variável.

  3. Especifique os seguintes valores para criar as definições básicas da variável:

    CampoDescrição
    Nome

    Especifique o nome da variável. Por exemplo: v_department ou v_password.

    Observação

    Uma variável que armazena um token do Diligent One deve usar este nome exato: v_hb_token

    Para obter informações sobre como adquirir um token do Diligent One, consulte Gerenciando tokens de acesso .

    Tipo

    Selecione o tipo de variável:

    • Caracterepara texto

    • Senhapara gerenciar com segurança senhas ou tokens

    • Usuário do sistema(disponível com kits de ferramentas) para autorizar operações da Plataforma Diligent One sem fazer referência a um usuário real, semelhante a uma conta de serviço

      Cuidado

      não edite variáveis de usuário de sistema, a menos que tenha um motivo para isso.

    Valor

    Insira um valor de variável. O valor de uma variável de senha pode ter até 8 KB de comprimento.

    O valor inserido é o valor inicial atribuído à variável na execução interativa do script no editor de script.

    Observação

    Para uma variável associada a uma entrada de tarefa, o valor está disponível apenas no editor de scripts. Ele não é propagado como valor padrão no Designer de Tarefa.

Configurar um parâmetro de entrada da tarefa associada

Se a variável é usada com um parâmetro de entrada da tarefa no Designer de Tarefa, você precisa especificar configurações adicionais.

  1. Clique no botão de alternância para habilitar Entrada da tarefa.

    Ative esta configuração para solicitar um valor ao usuário no Designer de Tarefa. A variável armazena o valor inserido pelo usuário ao executar ou agendar a tarefa.

  2. Se quiser permitir que o usuário ignore a informação de um valor de entrada, selecione Entrada do usuário opcional.

    Alguns valores podem alterar o comportamento do script, mas não são necessários para sua execução. Por exemplo, datas de início e fim opcionais especificadas pelo usuário podem limitar a análise a um determinado período.

  3. Em Rótulo da entrada da tarefa, insira o rótulo que o usuário verá no Designer de Tarefa para esse parâmetro.

    Por exemplo, Insira um departamento ou Insira seu token do Diligent One.

  4. Opcional. Em Descrição da entrada da tarefa, adicione detalhes para ajudar o usuário a fornecer um valor de entrada para o parâmetro.

Salvar a definição da variável

  1. Clique em Salvar e fechar para salvar a definição de variável e sair da janela Variáveis.

  2. Clique em Salvar e enviar para salvar o script com a definição de variável atualizada.

    Observação

    Você precisa salvar e enviar o script para salvar permanentemente a definição da variável.

  3. Digite uma mensagem de confirmação e clique em Confirmar.

    Uma mensagem é exibida com o resultado da confirmação do script.

Executar novamente o script

Quando você salva o conteúdo da janela Variáveis, a memória da sessão é limpa automaticamente no editor de script. Nenhuma das bibliotecas Python importadas, dicionários Python, dataframes gerados ou valores de variáveis armazenados na memória permanece disponível. Se você executar uma célula de script que depende de algo armazenado previamente na memória, ocorre um erro ou resultado inesperado.

Para restaurar a memória da sessão ao seu estado anterior, execute novamente todo o script ou todas as células que são pré-requisito.

Usar uma variável HCL em um script

Para usar uma variável HCL em um script, você precisa fazer referência à variável usando a sintaxe HCL específica.

Referência a uma variável de caractere HCL

Para fazer referência a uma variável de caractere HCL, use a seguinte sintaxe: hcl.variable[“nome_variável”]

Por exemplo:

print(hcl.variável["v_departamento"])

Saída do script:

Operações

Para obter informações detalhadas sobre a sintaxe obrigatória, consulte o Método variable[].

Referência a uma variável de senha HCL

Para fazer referência a uma variável de senha HCL, use a seguinte sintaxe: hcl.secret [“nome_variável”].unmask()

Por exemplo:

print(hcl.secret["v_token_hb"].unmask())

Saída do script:

zq025f72938e4s...

Para obter informações detalhadas sobre a sintaxe obrigatória, consulte o Método secret[].

Atribuir uma variável HCL a uma variável Python

Por conveniência, você pode atribuir um valor de uma variável HCL a uma variável normal do Python e depois referenciar somente a variável do Python.

Por exemplo:

departamento = hcl.variável["v_departamento"]
print(departamento)
token = hcl.segredo["v_token_hb"].unmask()
print(token)

Saída do script:

Operações
zq025f72938e4s...